; datas SEGMENT
;     arr db 30,0,30 dup(?)
;     block db 02h
; datas ENDS

; stacks SEGMENT
;     db 100 dup(0)
; stacks ENDS

; crlf MACRO
;     mov dl,0ah
;     mov ah,2
;     int 21h
;     mov dl,0dh
;     mov ah,2
;     int 21h
; ENDM

; codes SEGMENT
;     assume cs:codes,ds:datas,ss:stacks
; start:
;     mov ax,datas
;     mov ds,ax
    
;     lea dx,arr
;     mov ah,10
;     int 21h

;     crlf

;     mov bx,-1
;     mov cl,0

; nan:
;     inc bx
;     cmp arr[bx+2],20h
;     jl exit
;     cmp arr[bx+2],'0'
;     jl nan
;     cmp arr[bx+2],'9'
;     jg nan
;     inc cl
;     jmp nan

; exit:
;     add cl,30h
;     mov dl,cl
;     mov ah,2
;     int 21h

;     mov ah,4ch
;     int 21h
; codes ENDS
; end start

datas SEGMENT

datas ENDS

stacks SEGMENT
    db 100 dup(0)
stacks ENDS

codes SEGMENT
    assume cs:codes,ds:datas,ss:stacks
start:
    mov ax,datas
    mov ds,ax

    

    mov ah,4ch
    int 21h
codes ENDS
end start